Method and system for setting interface element colors

ABSTRACT

Setting interface element colors is disclosed including rendering an interface element, determining first color values, assigning a value to a color attribute of the interface element based on the first color values, and updating the interface element according to the assigned value.

CROSS REFERENCE TO OTHER APPLICATIONS

This application is a continuation of co-pending U.S. patent applicationSer. No. 15/368,414, entitled METHOD AND SYSTEM FOR SETTING INTERFACEELEMENT COLORS filed Dec. 2, 2016, which claims priority to People'sRepublic of China Patent Application No. 201510906885.6, entitled AMETHOD AND A DEVICE FOR SETTING INTERFACE ELEMENT COLORS filed Dec. 9,2015, both which are incorporated herein by reference for all purposes.

FIELD OF THE INVENTION

The present application relates to a method and a system for settinginterface element colors.

BACKGROUND OF THE INVENTION

In some scenarios, a user may wish to adjust interface elements of auser terminal to display certain colors to enhance the user'sexperience.

However, interface elements typically do not allow the adjustment of thedisplay of the interface elements described above. Typically, interfaceelements use a fixed image or colors, which are predefined and difficultto dynamically change and the interface elements display non-predefinedimages or colors.

BRIEF DESCRIPTION OF THE DRAWINGS

Various embodiments of the invention are disclosed in the followingdetailed description and the accompanying drawings.

FIG. 1A is a flowchart of an embodiment of a process for settinginterface element colors.

FIG. 1B is a flowchart of an embodiment of a process for determiningcolor values.

FIG. 1C is an illustration of an embodiment of icons, text, controls,display area borders, and display areas included in an interface.

FIG. 1D is a diagram of an embodiment illustrating a process forassigning color values to interface element color attributes.

FIG. 1E is a flowchart of an embodiment of a process for assigning acolor attribute of an interface element.

FIG. 2A is a flowchart of an embodiment of a process for displaying aninterface.

FIG. 2B is a diagram of an example of nine colors included in a presetsystem guideline color spectrum.

FIGS. 2C and 2D are illustrations of examples of codes for differentfirst color values.

FIG. 2E includes screenshots illustrating a wallpaper changing colorcausing an interface element to change color.

FIG. 3 is a structural diagram of an embodiment of a system for settinginterface element colors.

FIG. 4 is a structural diagram of an embodiment of a smart device forsetting interface element colors.

FIG. 5 is a functional diagram illustrating an embodiment of aprogrammed computer system for setting interface element colors.

DETAILED DESCRIPTION

The invention can be implemented in numerous ways, including as aprocess; an apparatus; a system; a composition of matter; a computerprogram product embodied on a computer readable storage medium; and/or aprocessor, such as a processor configured to execute instructions storedon and/or provided by a memory coupled to the processor. In thisspecification, these implementations, or any other form that theinvention may take, may be referred to as techniques. In general, theorder of the steps of disclosed processes may be altered within thescope of the invention. Unless stated otherwise, a component such as aprocessor or a memory described as being configured to perform a taskmay be implemented as a general component that is temporarily configuredto perform the task at a given time or a specific component that ismanufactured to perform the task. As used herein, the term ‘processor’refers to one or more devices, circuits, and/or processing coresconfigured to process data, such as computer program instructions.

A detailed description of one or more embodiments of the invention isprovided below along with accompanying figures that illustrate theprinciples of the invention. The invention is described in connectionwith such embodiments, but the invention is not limited to anyembodiment. The scope of the invention is limited only by the claims andthe invention encompasses numerous alternatives, modifications andequivalents. Numerous specific details are set forth in the followingdescription in order to provide a thorough understanding of theinvention. These details are provided for the purpose of example and theinvention may be practiced according to the claims without some or allof these specific details. For the purpose of clarity, technicalmaterial that is known in the technical fields related to the inventionhas not been described in detail so that the invention is notunnecessarily obscured.

Limited flexibility arises from the fact that only default color valuescan be assigned to color attributes of interface elements. Examples ofcolor attributes include foreground color, background color, etc. Thepresent application provides a process for setting interface elementcolors. The process can be performed by devices such as a mobile phone,a tablet computer, a personal computer, a smart television, or anyappropriate user terminal with an operating system, etc. In addition,the process can also be performed by an application (app) installed on auser terminal.

FIG. 1A is a flowchart of an embodiment of a process for settinginterface element colors. In some embodiments, the process 100 isimplemented by a user terminal 300 of FIG. 3 and comprises:

In 105, the user terminal renders an interface element.

In 110, the user terminal determines first color values.

In various embodiments, the user terminal determines the first colorvalues based on the following types of information: statuses ofinterface elements, designated images, designated events, user-selectedcolor values, or any combination thereof. A first color relates to acolor chosen in the process. For example, when the sky is drawn, blue ischosen as the first color or base color, and when the sky is actuallydrawn, one shade of blue is used.

Below are examples of the determination of a first color value based onat least one of the above types of information:

Example 1. A First Color Value is Determined Based on a Status of anInterface Element

Typically, the interface element refers to an interface element having acolor attribute to be set. The interface elements can have differentstatuses. As an example, the interface element is a control “button,”and the “button” can have one of three statuses: “Pressed,” “Normal,”and “Disabled.” In some embodiments, color values correspondingseparately to each of these three statuses can be preset. For example,“Pressed” is set to correspond to a color value of deep blue, “Normal”is set to correspond to a color value of light blue, and “Disabled” isset to correspond to a color value of gray.

Thus, when the current status of the “button” is “Pressed,” a thirdparty configures the color attribute of the image that is to beconfigured based on the deep blue color value corresponding to“Pressed.” In some embodiments, the third party relates to a third partyprogram or application which includes a button. For example, a usercould directly set the deep blue-indicating color value to correspond tothe color attribute value of the to-be-set image. When the user wants toset the button color to be blue, the user can set the button color toblue via an operation system configuration. In another example, the usercould have the color value calculated by applying a preset color valuecalculation technique to the deep blue-indicating color value and setthe calculated color value to be the color attribute value of theto-be-set image.

Example 2. A First Color Value is Determined Based on a Designated Image

The designated image can, for example, be any image stored locally on auser terminal. The designated image can be stored as a vectorgraph or abitmap. For example, the default for the image is wallpaper that theuser terminal is currently using, or the designated image is a certainimage designated by the user.

The wallpaper can be desktop wallpaper, lock screen wallpaper, or thelike.

To ensure that after the wallpaper in current use by the user terminalundergoes a change, one can relate pixel color values of the wallpaperin current use to color values of the interface elements. For example,one sets the pixel color values of the wallpaper in current use to bethe same as the color values of the button.

FIG. 1B is a flowchart of an embodiment of a process for determiningcolor values. In some embodiments, the process 1100 is an implementationof operation 110 of FIG. 1A and comprises:

In 1110, the user terminal receives a wallpaper setting instruction. Thewallpaper setting instruction includes a reference (e.g., a file nameand/or location, a link or a pointer to a file, etc.) to an image to beset as the wallpaper (e.g., display background) for the user terminal.

In 1120, the user terminal, in response to the receiving of thewallpaper setting instruction, sets an image corresponding to thewallpaper setting instruction to be wallpaper in current use by the userterminal.

In 1130, the user terminal determines a first color value based on pixelcolor values of the image corresponding to the wallpaper settinginstruction.

Through process 1100, the first color value immediately after the userterminal completes the setting for the wallpaper currently in use can bedetermined. Furthermore, by applying operation 120 of FIG. 1A, one canrelate the pixel color values of the wallpaper of the user terminalcurrently in use to the color value of the interface element and thusensure that the user has a consistent visual experience. For example,when the summer weather is hot, the user uses bamboo as the desktopwallpaper, which makes the user feels cool and refreshed when looking atthe desktop wallpaper. In another example, if the user opens afrequently used application having red as its main wallpaper color, theuser may feel uncomfortable; however, if the frequently used applicationis changed to have green as its main wallpaper color, the user can feelcool and relaxed again when the frequently used application is opened.Typically, applications do not actively change their main wallpapercolor.

A certain image designated by the user could, for example, be a certainimage determined by the user terminal in response to receiving aspecific image selection instruction. The image selection instructioncould, for example, correspond to a click instruction or a gestureinstruction directed at the image.

In the event that the designated image is a bitmap, pixels of thedesignated image have color values. The color values of the pixels canalso be called pixel color values. As an example, the pixel color valuescan be (but are not limited to) expressed by one or more red-green-blue(RGB) arrays. For example, a set of three values can be used torepresent the red, green, and blue components corresponding to a pixel.Other color formats such as YUV, YCbCr, etc., can also be used. Inanother example, the pixel color values can be expressed by one or moreparameter values determined by an RGB array. Other color representationscan be used.

In some embodiments, the first color value includes at least one colorvalue determined based on the pixel color values of the designatedimage. As an example, the user terminal determines a certain pixel colorvalue of the designated image to be the first color value. In anotherexample, the user terminal calculates a mean value of the pixel colorvalues of the designated image and determines the mean value to be afirst color value. In yet another example, the user terminal countspixels having different color values in the designated image and regardsthe color value corresponding to a maximum of the count totals as thefirst color value. In yet another example, the user terminal determinesa pixel color value of a main hue representing the designated image anddetermines the pixel color value to be a first color value.

In some embodiments, the pixel color values of the designated image canbe, but are not limited to, pixel color values obtained by the userterminal by sampling the color values of the pixels of the designatedimage.

The “dominant hue” represents the basic tendency of the colorappearance. As an example, although an image uses many colors, the imageis said to have a tendency with regard to the image's overall color. Forexample, the image tends towards blue or tends towards red. The imagecan tend to be warm or cool, etc. The basic tendency of a colorappearance corresponds to the dominant hue of an image. Typically, thedominant hue is differentiated based on the image's warmth or coolness.“Warm dominant hues,” “cool dominant hues,” and “intermediate dominanthues” can exist. Typically, red, orange, and yellow represent warm hues,green, blue, and black represent cool hues, and gray, purple, and whiterepresent intermediate hues. The brighter a cool hue is, the more theimage's overall feel tends towards warmth. The brighter a warm hue is,the more the image's overall feel tends towards coolness.

Referring back to FIG. 1A, Example 3. A first color value is determinedbased on a designated event.

The designated event could, for example, be a time-related event, suchas an arrival of a holiday or an arrival of the user's birthday. As anexample, the designated event is a holiday. For the holiday, the usercould choose one color to express feelings towards the holiday. Inanother example, the time-related event could be an event caused by theuser terminal such as the receipt by the user terminal of a text messagefrom a designated contact, payment of an order by the user terminal,acquisition by the user terminal of a forecast for a designated type ofweather (such as clear or overcast), etc.

When a designated event currently exists, a color value mapping to thecurrently existing designated event based on mapping relationshipsbetween each designated event and a color value can be determined. Thecolor value that is determined can serve as the first color value.

Example 4. The First Color Value is Determined Based on a User-SelectedColor Value

For example, a color value interface including at least two colors isdisplayed. Next, the appropriate color value is determined based on theuser's selection of a color included in a displayed color valueinterface. Then the first color value is determined based on thedetermined appropriate color value. For example, the determinedappropriate color value is directly determined as the first color value.

In 120, the user terminal assigns a value for a color attribute of aninterface element based on the determined first color value. Theassignment can be done via the operating system.

In 130, the user terminal updates the interface element according to theassigned value.

Typically, an interface element has various attributes related todisplay effects. Examples of the various attributes include colorattributes, transparency attributes, brightness attributes, etc. Theuser terminal, by using attribute values to assign values to theattributes related to the display effects, can cause the interfaceelement to have the display effects corresponding to the attributes whenthe interface element is being displayed.

In some embodiments, the assigning of the values to the interfaceelement attributes that are related to display effects can include, butis not limited to, the assigning of values to attributes of an imagethat is used as an interface element background image. The size andshape of the image can be set based on the expected display effects ofthe interface elements. The image can be a bitmap or a vectorgraph. Theimage can have texture features, shape features, and/or otherappropriate features.

In some embodiments, the user terminal assigns a value for an interfaceelement color attribute based on a first color value, which wasdetermined based on the designated image. By relating the interfaceelement color attribute to the first color value that was determined,the user's wishes can be met to flexibly set the interface element colorbased on individual preference. For example, the first color value isdetermined based on the designated image, and when the designated imageis the wallpaper currently in use by the user terminal, by relating theinterface element color to the color of the wallpaper currently in use,color coordination of the interface element with the wallpaper currentlyin use can be ensured, thus providing the user with a consistent andaesthetically pleasing visual effect.

In some embodiments, where the interface element has different statuses,the assignment of values to color attributes for such an interfaceelement is based on the first color value that was determined andcomprises: the color attributes to an interface element having a firststatus are assigned based on the first color value that was determined.For example, a first color, such as red, is used to generate a set ofcolor. If an interface element is to be emphasized, the interfaceelement can use a strong red color. In other words, although the maincolor is red, different shades of red colors can be used to indicateother statuses. Using the above example of the control “button” havingthe three statuses of “Pressed,” “Normal” and “Disabled,” an assignmentof a value to the color attribute of the “button” when the “button” hasone of the three statuses is based on the determined first color value.In another example, a color value is assigned for a function icon when afunction associated with the function icon has an “on” status, and adifferent color value is assigned for the functional icon when itsassociated function has an “off” status. Function icons, for example,can include at least one of the following: Bluetooth switch icons,wireless network switch icons, airplane mode switch icons, and othersuch function icons. For example, a network connectivity icon can beassigned a color value associated with green when the associated networkconnection is on, and the network connectivity icon can be assigned acolor value associated with red when the network connection is off.Displaying an interface element in different states with correspondingcolor values allows the user to determine the state of an application orfunction by mere visual inspection, without having to navigate to aparticular menu or setting to make the determination. Thus, systemresources are conserved and usability is improved. Furthermore, thecolor can automatically change based on specific events, such as awallpaper change, and the user does not need to manually perform thecolor change.

Based on the first color value, a value can be assigned to a colorattribute of a first interface element or to the color attribute ofmultiple interface elements. The number of interface elements to beassigned the color attribute value is arbitrary and depends onimplementation.

FIG. 1C is an illustration of an embodiment of icons, text, controls,display area borders, and display areas included in an interface. Theinterface elements of the interface can include at least one of thefollowing: icons, text, controls, display area boundaries, displayareas, or the like.

The interface elements can be interface elements of basic apps,interface elements of third party apps, or a combination thereof. The“basic apps” refer to the user terminal's operating system and standard,pre-loaded apps that come with the operating system. The “third partyapps” refer to apps other than the basic apps installed on the userterminal. In the event that the interface elements are the interfaceelements of basic apps, the user terminal typically can invoke a systeminterface to assign values to color attributes of the interface elementsof the system app based on first color values. In the event that theinterface elements are the interface elements of the third party apps,the user terminal can invoke a third party interface to the userterminal's operating system to assign values to color attributes of theinterface elements of the third party app based on the first colorvalues.

In some embodiments, after the first color values are determined byperforming operation 110 of FIG. 1A, based on the first color values,values to the color attributes of interface elements of native apps areassigned.

In some embodiments, prior to performing operation 120, the userterminal receives an app selection instruction that includes a referenceto an app (e.g., name, location, link, etc.), and in response toreceiving the instruction, determines that the selected app is to serveas an app whose colors are to be adjusted. Thus, an example of animplementation of operation 120 includes: the user terminal assigns (viathe operating system) values to color attributes of at least oneinterface element of the app whose colors are to be adjusted.

In some embodiments, the assigning of the values to the color attributesof the interface elements based on the first color values, for example,includes: assigning the first color values to the color attributes ofthe interface elements; or determining second color values mapping tothe first color values, and assigning values to color attributes of theinterface elements based on the determined second color values.

In some embodiments, a preset quantity of color value sets can be setup. Moreover, mapping relationships can be established between eachcolor value set and different color value ranges (first mappingrelationships). Each color value set separately includes at least onecolor value: color values included in each color value set correspond tothe above second color values. The collection of color value sets can bereferred to as a system guideline color spectrum. Based on the systemguideline color spectrum, operation 120 can include determining colorvalue ranges into which the first color values fall based on the firstcolor values and the different color value ranges.

In some embodiments, the color value sets mapped from the color valuerange into which the first color values fall are determined from withinthe system guideline spectrum based on the first mapping relationships.

In some embodiments, values are assigned to color attributes ofinterface elements based on color values in the color value sets thatwere determined in the previous operation (operation 120).

In some embodiments, values of color attributes of one interface elementor values of color attributes of two or more interface elements can beassigned based on the color values in the sets of color values that weredetermined. In the event that a color value set that was determinedincludes one color value, the color value can be assigned to one or moreinterface elements. In the event that the color value set that wasdetermined includes two or more color values, the two or more colorvalues included in the color value set can be separately assigned to twoor more corresponding interface elements.

To enable coordination between the colors of different interfaceelements in an interface, and thus to improve the ease of use andprovide a better visual experience, after setting the color value sets,the mapping relationships between the different color values in thecolor value sets and categories of interface elements (second mappingrelationships) can be established. Based on the second mappingrelationships, and after the color value sets mapped from the colorvalue ranges into which the first color values fall are determined fromwithin the system guideline spectrum based on the first mappingrelationships, the interface element categories that separately map todifferent color values in the previously determined color value sets aredetermined, and thus the different color values in a determined colorvalue set to the interface elements of the corresponding categories,respectively, can be determined. For example, color value A in adetermined color value set X is assigned to the interface elements inthe “Control” category. As an example, the main color is green (A) in agreen color value set (X), and the main color A is chosen as the Controlcolor. In another example, color value B in the determined color valueset X is assigned to the interface elements in the “Icon” category.

As an example: the first color value is the color value of a dominanthue of a desktop wallpaper in current use by the user terminal, and thesystem guideline color spectrum includes nine sets of color-matchingschemes. FIG. 1D is a diagram illustrating an embodiment of a processfor assigning color values to interface element color attributes.

The box (Numeral I) on the left side of FIG. 1D represents a userterminal desktop before values are assigned to color attributes ofinterface elements based on the first color values. The desktop makesuse of wallpaper. The wallpaper is the desktop wallpaper in current useby the user terminal. In some embodiments, the color value of a dominanthue used to represent the wallpaper as the first color value can bedetermined by analyzing the color value, e.g., the RGB value, YUV value,and the like.

The box (Numeral II) in the middle of FIG. 1D is a diagram of ninecolor-matching schemes included in the system guideline color spectrum.In the box in the middle of FIG. 1D, color-matches 1-9 represent thenine color-matching schemes. These nine color-matching schemes can benine color value sets, nine color-computing techniques, etc. Given thefirst color or dominant hue of the wallpaper, the color-matching schemesthat map to the first color value can be determined. For example, giventhe first color being blue, the color-matching scheme that is determinedis color-matching 3 in FIG. 1D. For the first color being blue, thecolor-matching scheme of the 9 color-matching schemes that mostly closematches blue is chosen.

The box (Numeral III) on the right side of FIG. 1D represents aninterface where interface elements are located following an assignmentof values to color attributes. In some embodiments, the color attributesof an interface element in the interface can have values assigned tothem based on color-matching 3.

In some embodiments, the color values in the color value sets and theinterface element categories that map to the color values can be set bya user interface (UI) designer based on popular aesthetic standards.Therefore, by using different color values in a single color values setto assign values to color attributes of interface elements of thecorresponding category, an interface having an interface elementcolor-matching that conforms to popular aesthetics can be obtained andthereby ensures a good visual experience for the user.

In some embodiments, the way in which second color values are mapped tofirst color values can also be achieved as follows:

Calculation of the second color values can be based on the first colorvalues and a preset color value mapping rule. For example, if the firstcolor values are color values represented by (R, G, B) arrays, thepreset color value mapping rule is (R-50, G-50, B-50). Thus, when thefirst color values are (128, 100, 128), the preset color value mappingrule can be used to calculate the second color values of (78, 50, 78).

Typically, a second color value can be calculated based on first colorvalues and a color value mapping rule. Determining the second colorvalues corresponding to different categories of interface elements canbe based on the first color values and second color value-determiningrules individually preset for the different categories of the interfaceelements (the rule can, for example, be a color value mapping rule).Values can be assigned to color attributes of the different categoriesof the interface elements based on the determined second color valuescorresponding to the different categories of the interface elements. Forexample, if the second color value corresponding to “control” isdetermined to be X (e.g., RGB (150, 50, 160)), and the second colorvalue corresponding to “icon” is determined to be Y (e.g., RGB (200, 60,130)), the value X can be assigned to the color attribute for “control”and the value Y can be assigned to the color attribute for “icon.”

Comparing the technique for calculating the second color values based ona preset color value mapping rule to the technique for determining thesecond color values based on preset color value sets, one of theadvantages of the former technique lies in the fact that the formertechnique can reduce storage space that would be taken up by the presetcolor value sets, while one of the advantages to the latter techniquelies in the fact that the latter technique determines the second colorvalues more efficiently. Either technique can be selected based onactual need. Of course, some embodiments can also employ otherapproaches in the determining of the second color values.

In some embodiments, the same interface elements have differentstatuses. For example, the interface element “control” has threestatuses: normal, pressed (selected or pressed by the user), anddisabled. In some embodiments, in view of the fact that in scenarioswhere interface elements have different statuses, values can be assignedto color attributes of different statuses corresponding to the interfaceelements. FIG. 1E is a flowchart of an embodiment of a process forassigning a color attribute of an interface element. In someembodiments, process 1200 is an implementation of 120 of process 100 andcomprises:

In 1210, the user terminal determines the color values corresponding toat least one status of the interface elements based on the second colorvalues that were determined and color value-determining rules setindividually for at least one status of the interface elements.

For example, using the interface element “control” example describedabove, color value determining rules a, b, and c corresponding to thethree “control” statuses “normal,” “pressed,” and “disabled” can bepreset. Thus, through operation 1210, the determined second color valuesand the set color value determining rules a, b, and c to the colorvalues corresponding to the three “control” statuses “normal,”“pressed,” and “disabled” can be used.

The color value determining rules can be a simple mapping relationshipof one color value corresponding to another color value, or the colorvalue determining rules can be a more complex calculation formula.

In 1220, the user terminal assigns values to color attributescorresponding to at least one status of the interface elements based onthe color values corresponding to the at least one status of theinterface elements (as determined through operation 1210).

In the above example again, when determining that the color value of the“normal” status of the “control” is Q based on the color valuedetermining rule a, and when determining that the color value of the“pressed” status of the “control” is 0 based on the color valuedetermining rule b, the Q value can be assigned to the color attributeof the “normal” status corresponding to the “control,” and the O valuecan be assigned to the color attribute of the “pressed” statuscorresponding to the “control.”

Operations 110 and 120 of FIG. 1A can be applied to support theassignment of different color values to the color attributes ofdifferent statuses of interface elements. Operations 110 and 120 thusachieve differentiated display of interface elements of differentstatuses, enabling the user to obtain increased satisfaction in thevisual experience and safeguarding the user from possible erroneousapplications resulting from an inability to distinguish betweeninterface elements. Therefore, process 100 of FIG. 1A reduces systemprocessing resources waste.

When values are being assigned to the color attributes of interfaceelements, values are also being assigned to interface element displayeffect-related attributes other than color attributes, and forms ofpresenting interface elements can be enriched. Therefore, in someembodiments, process 100 can further include:

Determining non-color display effects-related attribute valuescorresponding to the at least one status of the interface elements basedon a rule for determining attribute values related to non-color displayeffects that are not color attribute values, and that are individuallyset for at least one status of interface elements.

Assigning values to attributes relating to color display effects otherthan those of color attribute values and corresponding to at least onestatus of the interface elements based on the attribute values relatedto the non-color display effects that were determined.

The attribute values related to the non-color display effects caninclude, but are not limited to at least one of the following:transparency values, brightness values, gray scale values, or the like.

In some embodiments, the timing of the performance of operation 120, forexample, comes after receiving the interface element including aninterface display instruction, or can be performed at some other time.

In some embodiments, an interface element has a color that reflectsoperating system security levels. The interface element's color couldoften indicate some fixed meanings. For example, when the color of asecurity risk level-indicating interface element is blue, that colorwould indicate a low security risk. When the color is red, that colorwould indicate a high security risk. Therefore, the color values of theinterface elements are not required to be related to the first colorvalues.

To address the above interface elements, in some embodiments, adetermination can be made whether the interface elements arenon-adjustable interface elements with fixed (preset) color attributevalues, before assigning values to color attributes of the interfaceelements based on the first color values.

If a positive determination result is attained, then values cannot beassigned to color attributes of the interface elements based on thefirst color values. If a negative determination result is attained, thenoperation 120 can be performed, i.e., assign values to color attributesof interface elements based on the first color values.

In some embodiments, an identifier can be used to indicate whether thecolor attribute value of an interface element is adjustable ornon-adjustable. A determination can be made whether the interfaceelements are preset interface elements that have non-adjustable colorattribute values based on the identifier.

Process 100 of FIG. 1A provides an interface element color-settingtechnique for assigning values to the color attributes of the interfaceelements based on the first color values that were determined. Inaddition, process 100 is a highly-efficient interface element colorattribute value-setting technique because the technique can supportautomatic adjustments to color attributes of interface elements-baseduser-set wallpaper, etc. This technique is more efficient thanconventional approaches due to the use of the adjustments to userterminal system themes to change interface element attributes.Therefore, process 100 can conserve processing resources of userterminal processors while achieving the goal of adjusting interfaceelement colors.

Please note that each operation in the technique provided by process 100can be performed by the same device or executing entity, such as thesame user terminal or the same server, or process 100 can also beperformed by different devices as the executing entities. For example,the executing entity of operation 110 could be a user terminal, and theexecuting entity of operation 120 could be a server. After determiningthe first color values by performing operation 110, the user terminalcould send the first user values to a server and thus trigger the serverto perform operation 120.

FIG. 2A is a flowchart of an embodiment of a process for displaying aninterface. In some embodiments, process 200 is implemented by anoperating system of a mobile phone 300 of FIG. 3 and comprises:

In 210, the mobile phone receives an element color adjustmentinstruction.

In some embodiments, a click instruction issued by the user at a buttonthat is displayed on a desktop and that includes the text “Interfaceelement color adjustment” is the element color adjustment instruction.In some embodiments, the click instruction issued by the user at a “Setthe image as desktop wallpaper” option or “Set the image as lock screenwallpaper” option while setting the desktop wallpaper or the lock screenwallpaper can also serve as the element color adjustment instruction.

In 220, in response to the receiving of the element color adjustmentinstruction, the mobile phone collects color values of pixels of desktopwallpaper or lock screen wallpaper.

In 230, the mobile phone determines a first color value of a dominanthue representing the desktop wallpaper or the lock screen wallpaperbased on the collected color values of the pixels. In other words, themobile phone determines the first color value, as described above.

In 240, the mobile phone, to obtain a second color value, determines acolor value mapping to the first color value based on the first colorvalue and a preset system guideline color spectrum. The determined firstcolor value determines the second color value, as described above.

FIG. 2B is a diagram of an example of nine colors included in a presetsystem guideline color spectrum. For example, assume that the presetsystem guideline color spectrum includes the nine color values shown inFIG. 2B and that the different color values have corresponding codes,which are RGB values “#f8f8f8,” “#363636,” etc., respectively, as shownin FIG. 2B.

Furthermore, if we assume that the determined first color value is thecolor value indicating the dominant hue “white” and that the color valuemapping to this color value is the color value (which is also “white”)having a code in the system guideline color spectrum being “#f8f8f8,”then the determined second color value is the color value having a codeof “#f8f8f8.”

FIGS. 2C and 2D are illustrations of examples of codes for differentfirst color values. For example, in addition to a first color valueindicating that the dominant hue is white, there are also additionalfirst color values that map to other codes in the system guideline colorspectrum. Each first color value can also have a code. In someembodiments, codes of different first color values and mappingrelationships between different first color values and second colorvalues exist, as shown in FIGS. 2C and 2D.

In FIGS. 2C and 2D, each image is labeled with two corresponding boxesin the upper-right corner. The color in the upper box of the two boxesindicates the color corresponding to the dominant hue of the image. Thevalues in the box indicate the code of the color value of the color. Thecolor in the lower box indicates a color corresponding to the colorvalue in the system guideline color spectrum mapping from the dominanthue in the image. The characters in the lower box indicate the code ofthe color value in the system guideline color spectrum. Dominant hues ofdifferent images often correspond to different colors, and each of thecolors corresponding to a dominant hue of an image can be mapped to adifferent color value in the system guideline color spectrum.

Referring back to FIG. 2A, assume that the designated interface elementsare interface elements of a basic app. In 250, the mobile phone, byinvoking an operating system interface, assigns a second determinedcolor value to a color attribute of the designated interface elementshaving a “normal” status.

Further, the mobile phone calculates a third color value C3 based on thecolor value-calculating formula that was set and assigns the third colorvalue to the color attribute of the designated interface elements havinga “pressed” status. In addition, the mobile phone optionally selects atransparency value from within a first transparency value range (e.g.,[65%, 90%]) and assigns the selected transparency value to atransparency attribute of the designated interface elements having a“pressed” status.

In some embodiments, the mobile phone assigns the determined secondcolor value to the color attribute of the designated interface elementshaving a “disabled” status. In addition, the mobile phone selects atransparency value from within a second transparency value range (e.g.,[20%, 60%]) and assigns the selected transparency value to thetransparency attribute of the designated interface elements having a“disabled” status.

In 260, when a currently occurring event that complies with thepresentation conditions for a designated interface element is detected,the mobile phone acquires the designated interface element's colorattribute value corresponding to the current status and the designatedinterface element's color attribute value's transparency attribute valuebased on the current status of the designated interface element.Moreover, the mobile phone renders an interface including the designatedinterface elements based on the acquired color attribute value andtransparency attribute value, and displays the rendered interface.

When the designated interface element is a designated interface elementon a desktop, a presentation condition for the designated interfaceelement can be a condition for triggering presentation of the desktop bythe mobile phone. For example, the mobile phone receives a clickinstruction from the user directed at a “Home” key. When the designatedinterface element is an icon in a pull-down notification center, thepresentation condition for the interface element could be a conditionfor triggering the mobile phone to present the pull-down notificationcenter. For example, the mobile phone could be receiving a user swipeinstruction input through the desktop by swiping from the desktop top tothe desktop bottom. The pull-down notification center can be aninterface for presenting system notifications, system function switches(such as a Bluetooth switch or airplane mode switch), frequently-usedapps of the user, or any combination thereof. The pull-down notificationcenter typically has a hidden status. When the mobile phone detects thecondition for presenting the pull-down notification center, the mobilephone is to present the interface.

Process 200 can assign values to color attributes of designatedinterface elements of a basic app based on the pixel color values of thewallpaper in current use by the user, and thus provide a flexibleinterface element setting technique. Process 200 thus avoids a poorflexibility arising from the inability to assign values other thandefault values to color attributes of the interface elements. If thedesignated interface element is a third party app interface element, andif the third party app opens a data access interface to the mobile phoneoperating system, the mobile phone can employ operations similar to theabove to implement the rendering and the displaying of the third partyapp interface. As an example, with regard to operation 250, the mobilephone can assign values to color attributes or transparency attributesof the interface elements by invoking the data access interface.

Process 200 can support interface element color adaptive adjustmentsthat are performed each time the wallpaper in current use (desktopwallpaper or lock screen wallpaper) is adjusted by the user. The userthus can enjoy increased satisfaction in the visual experience.

FIG. 2E includes screenshots illustrating a wallpaper changing colorcausing an interface element to change color. For the pair of images onthe left side of FIG. 2E, the dominant hue of the wallpaper is green andsome interface elements (or buttons) also have a green dominant hue.When the dominant hue of the wallpaper changes to blue, as shown in thepair of images on the right side of FIG. 2E, the interface elements (orbuttons) that had a green dominant hue change to have a blue dominanthue.

FIG. 3 is a structural diagram of an embodiment of a system for settinginterface element colors. In some embodiments, the system 300 isconfigured to perform process 100 of FIG. 1A and includes a color valuedetermining unit 310 and a value assigning unit 320.

In some embodiments, the system 300 relates to a user terminal, a mobilephone, a device, or the like.

In some embodiments, the color value determining unit 310 is configuredto determine first color values.

For example, the color value determining unit 310 specificallydetermines the first color values based on statuses of the interfaceelements, designated images, designated events, user-selected colorvalues, or any combination thereof.

As an example, the color value determining unit 310 determines a firstcolor value based on a color value of a wallpaper currently in use bythe user, a color value of the image corresponding to an image selectioninstruction, or a combination thereof. In another example, the colorvalue determining unit 310 determines a color value mapped from thecurrent status of the interface element based on mapping relationshipsof different statuses of the interface element to color values. In yetanother example, the color value determining unit 310, when a firstdesignated event currently exists, determines color values mapping tofirst designated events based on the mapping relationships betweenvarious designated events and color values. In yet another example, thecolor value determining unit 310 displays a color value interfaceincluding at least two colors and determines the first color valuesbased on user selected colors included in the color value interface.

In some embodiments, the value assigning unit 320 is configured toassign values to color attributes of interface elements based on thefirst color values determined by the color value determining unit 310.

As an example, the value assigning unit 320 assigns values to colorattributes of interface elements of a first status based on the firstcolor values determined by the color value determining unit 310.

In some embodiments, the interface elements include function icons, andthe first status includes corresponding functions represented byfunction icons having an “on” status.

In some embodiments, the value assigning unit 320 assigns the firstcolor values determined by the color value determining unit 310 to colorattributes of the interface elements, or determines second color valuesmapping to the first color values determined by the color valuedetermining unit 310, and assigns values to color attributes of theinterface elements based on the determined second color values.

In some embodiments, the value assigning unit 320 determines secondcolor values from among the second color values included in a presetsecond color value set based on the first color values determined by thecolor value determining unit 310, or calculates the second color valuesbased on the first color values and a preset color value mapping rule.

In some embodiments, the value assigning unit 320 determines secondcolor values corresponding to different categories of interface elementsbased on the first color values and second color value-determining rulesindividually preset for the different categories of the interfaceelements and assigns values to color attributes of interface elements ofthe different categories based on the second color values correspondingto the different categories of interface elements.

In some embodiments, to enable users to have a direct, visualunderstanding of the current visual status of the interface element, thevalue assigning unit 320 determines the color values corresponding to atleast one status of the interface elements based on the second colorvalues determined by the color value determining unit 310 and the colorvalue determining rule for separately setting at least one status of theinterface elements, and assigns values to color attributes correspondingto the at least one status of the interface elements based on the colorvalues corresponding to the at least one status of the interfaceelements.

In some embodiments, to enable the user to have a direct, visualunderstanding of the current visual status of the interface element, thedevice further includes: another attribute value determining unit 330configured to determine attribute values related to non-color displayeffects and corresponding to interface elements. Correspondingly, thevalue assigning unit 320 is further configured to assign values toattributes related to non-color display effects of the interfaceelements based on attribute values that are related to the non-colordisplay effects and that were determined by the other attribute valuedetermining unit 330.

In some embodiments, the attribute values related to non-color displayeffects include: transparency values, brightness values, gray scalevalues, or any combination thereof.

In some embodiments, when the designated images include the wallpaper incurrent use by the user, the color value determining unit 310 is furtherconfigured to receive a wallpaper setting instruction, in response toreceiving the wallpaper setting instruction, set the image correspondingto the wallpaper setting instruction to be the wallpaper in current useby the user terminal, and determine first color values based on thepixel color values of the image corresponding to the wallpaper settinginstruction.

The device 300 can also support assigning values to interface elementsthat satisfy a designated condition based on the first color values. Forexample, a value assigning unit 320 determines whether interfaceelements are preset, color attribute value non-adjustable interfaceelements prior to assigning values to color attributes of the interfaceelements based on the first color values, and obtains a negativeassessment result.

In some embodiments, the interface elements include the followingcategories: icons, text, controls, display area boundaries, displayareas, or any combination thereof.

In some embodiments, the interface elements are interface elements ofbasic apps, interface elements of third party apps, or a combinationthereof.

The device 300 can assign values to color attributes of interfaceelements based on the determined first color values and thus provide aninterface element color-setting technique. In addition, the technique isa highly-efficient interface element color attribute value-settingtechnique, because the technique can support automatic adjustments tocolor attributes of interface elements-based user-set wallpaper, etc.This technique is more efficient than conventional approaches, namelychanging interface element attributes based on the adjustments to userterminal system themes. Therefore, the technique can conserve processingresources of user terminal processors while adjusting interface elementcolors.

The units described above can be implemented as software componentsexecuting on one or more general purpose processors, as hardware such asprogrammable logic devices and/or Application Specific IntegratedCircuits designed to perform certain functions, or a combinationthereof. In some embodiments, the units can be embodied by a form ofsoftware products which can be stored in a nonvolatile storage medium(such as optical disk, flash storage device, mobile hard disk, etc.),including a number of instructions for making a computer device (such aspersonal computers, servers, network equipment, etc.) implement themethods described in the embodiments of the present invention. The unitsmay be implemented on a single device or distributed across multipledevices. The functions of the units may be merged into one another orfurther split into multiple sub-units or units.

The methods or algorithmic steps described in light of the embodimentsdisclosed herein can be implemented using hardware, processor-executedsoftware units, or combinations of both. Software units can be installedin random-access memory (RAM), memory, read-only memory (ROM),electrically programmable ROM, electrically erasable programmable ROM,registers, hard drives, removable disks, CD-ROM, or any other forms ofstorage media known in the technical field.

FIG. 4 is a structural diagram of an embodiment of a smart device forsetting interface element colors. In some embodiments, the smart device400 includes: memory 410 and a processor 420.

In some embodiments, the memory 410 is configured to store computerprogram instructions.

In some embodiments, the processor 420 coupled to the memory isconfigured to read computer instructions stored in the memory, andexecute the following operations: determining first color values; andassigning values to color attributes of interface elements based on thefirst color values.

In some embodiments, the processor assigns values to color attributes ofinterface elements having a first status.

In some embodiments, the interface elements include function icons, andthe first status includes the corresponding functions represented by thefunction icons having an “on” status.

In some embodiments, the processor determines first color values basedon statuses of the interface elements, designated images, designatedevents, user-selected color values, or any combination thereof.

As an example, the processor determines, based on pixel color values ofa designated image, the color value of a dominant hue used to representthe designated image as the first color value. In another example, theprocessor determines the color value mapped from the current status ofthe interface element as the first color value based on the mappingrelationships of different statuses of the interface element to colorvalues. In yet another example, the processor, when a first designatedevent currently exists, determines the color values mapping to firstdesignated events based on the mapping relationships between variousdesignated events and color values to be the first color values. In yetanother example, the processor displays a color value interfaceincluding at least two colors and determines first color values based onselections made by the user of colors included in the color valueinterface.

To assign values to color attributes of the interface elements, theprocessor, for example, assigns the first color values to the colorattributes of the interface elements; or determines second color valuesmapping to the first color values, and assigns values to the colorattributes of the interface elements based on the determined secondcolor values.

In some embodiments, the processor determines second color values fromamong the second color values included in a preset second color valueset based on the first color values, or calculates the second colorvalues based on the first color values and a preset color value mappingrule.

In some embodiments, the processor determines second color valuescorresponding to different categories of the interface elements based onthe first color values and second color value-determining rulesindividually preset for the different categories of the interfaceelements and assigns values to color attributes of the interfaceelements of the different categories based on the second color valuescorresponding to the different categories of the interface elements.

In some embodiments, the processor determines the color valuescorresponding to at least one status of the interface elements based onthe determined second color values and the color value determining rulefor separately setting at least one status of the interface element, andassigns values to color attributes corresponding to the at least onestatus of the interface element based on the color values correspondingto the at least one status of the interface element.

The smart device can also assign values to attributes related tonon-color display effects and corresponding to the interface elements.As an example, the processor in the smart device can also determine theattribute values related to the non-color display effects andcorresponding to the interface elements, and assign values to attributesrelated to the non-color display effects of the interface elements basedon the attribute values that are related to the non-color displayeffects and that were determined by the other attribute valuedetermining unit.

The attribute values related to the non-color display effects caninclude transparency values, brightness values, gray scale values, orany combination thereof.

With the above smart device 400, first color values to assign values tocolor attributes of interface elements can be determined and thus aninterface element color-setting technique can be provided. In addition,the technique is a highly-efficient interface element color attributevalue-setting technique because the technique can support automaticadjustments to color attributes of interface elements-based user-setwallpaper, etc. This technique is more efficient than the conventionalapproaches, namely changing interface element attributes based onadjustments to user terminal system themes. Therefore, the technique canconserve processing resources of user terminal processors whileadjusting interface element colors.

FIG. 5 is a functional diagram illustrating an embodiment of aprogrammed computer system for setting interface element colors. As willbe apparent, other computer system architectures and configurations canbe used to set interface element colors. Computer system 500, whichincludes various subsystems as described below, includes at least onemicroprocessor subsystem (also referred to as a processor or a centralprocessing unit (CPU)) 502. For example, processor 502 can beimplemented by a single-chip processor or by multiple processors. Insome embodiments, processor 502 is a general purpose digital processorthat controls the operation of the computer system 500. Usinginstructions retrieved from memory 510, the processor 502 controls thereception and manipulation of input data, and the output and display ofdata on output devices (e.g., display 518).

Processor 502 is coupled bi-directionally with memory 510, which caninclude a first primary storage, typically a random access memory (RAM),and a second primary storage area, typically a read-only memory (ROM).As is well known in the art, primary storage can be used as a generalstorage area and as scratch-pad memory, and can also be used to storeinput data and processed data. Primary storage can also storeprogramming instructions and data, in the form of data objects and textobjects, in addition to other data and instructions for processesoperating on processor 502. Also as is well known in the art, primarystorage typically includes basic operating instructions, program code,data, and objects used by the processor 502 to perform its functions(e.g., programmed instructions). For example, memory 510 can include anysuitable computer-readable storage media, described below, depending onwhether, for example, data access needs to be bi-directional oruni-directional. For example, processor 502 can also directly and veryrapidly retrieve and store frequently needed data in a cache memory (notshown).

A removable mass storage device 512 provides additional data storagecapacity for the computer system 500, and is coupled eitherbi-directionally (read/write) or uni-directionally (read only) toprocessor 502. For example, storage 512 can also includecomputer-readable media such as magnetic tape, flash memory, PC-CARDS,portable mass storage devices, holographic storage devices, and otherstorage devices. A fixed mass storage 520 can also, for example, provideadditional data storage capacity. The most common example of massstorage 520 is a hard disk drive. Mass storages 512, 520 generally storeadditional programming instructions, data, and the like that typicallyare not in active use by the processor 502. It will be appreciated thatthe information retained within mass storages 512 and 520 can beincorporated, if needed, in standard fashion as part of memory 510(e.g., RAM) as virtual memory.

In addition to providing processor 502 access to storage subsystems, bus514 can also be used to provide access to other subsystems and devices.As shown, these can include a display monitor 518, a network interface516, a keyboard 504, and a pointing device 506, as well as an auxiliaryinput/output device interface, a sound card, speakers, and othersubsystems as needed. For example, the pointing device 506 can be amouse, stylus, track ball, or tablet, and is useful for interacting witha graphical user interface.

The network interface 516 allows processor 502 to be coupled to anothercomputer, computer network, or telecommunications network using anetwork connection as shown. For example, through the network interface516, the processor 502 can receive information (e.g., data objects orprogram instructions) from another network or output information toanother network in the course of performing method/process steps.Information, often represented as a sequence of instructions to beexecuted on a processor, can be received from and outputted to anothernetwork. An interface card or similar device and appropriate softwareimplemented by (e.g., executed/performed on) processor 502 can be usedto connect the computer system 500 to an external network and transferdata according to standard protocols. For example, various processembodiments disclosed herein can be executed on processor 502, or can beperformed across a network such as the Internet, intranet networks, orlocal area networks, in conjunction with a remote processor that sharesa portion of the processing. Additional mass storage devices (not shown)can also be connected to processor 502 through network interface 516.

An auxiliary I/O device interface (not shown) can be used in conjunctionwith computer system 500. The auxiliary I/O device interface can includegeneral and customized interfaces that allow the processor 502 to sendand, more typically, receive data from other devices such asmicrophones, touch-sensitive displays, transducer card readers, tapereaders, voice or handwriting recognizers, biometrics readers, cameras,portable mass storage devices, and other computers.

The computer system shown in FIG. 5 is but an example of a computersystem suitable for use with the various embodiments disclosed herein.Other computer systems suitable for such use can include additional orfewer subsystems. In addition, bus 514 is illustrative of anyinterconnection scheme serving to link the subsystems. Other computerarchitectures having different configurations of subsystems can also beutilized.

Although the foregoing embodiments have been described in some detailfor purposes of clarity of understanding, the invention is not limitedto the details provided. There are many alternative ways of implementingthe invention. The disclosed embodiments are illustrative and notrestrictive.

What is claimed is:
 1. A method for setting interface element colors, comprising: rendering, using a processor, an interface element, wherein the interface element includes a function icon; determining, using the processor, first color values; assigning, using the processor, a value to a color attribute of the interface element based on the first color values, comprising: assigning a first value to a first color attribute of the interface element based on the interface element having a first status being on or a first status being off, the first status being associated with a corresponding function represented by the function icon; and updating, using the processor, the interface element according to the assigned value.
 2. The method as described in claim 1, wherein the determining of the first color values comprises: determining the first color values based on a status of the interface element, a designated image, a designated event, a user-selected color value, or any combination thereof.
 3. The method as described in claim 1, further comprising: determining an attribute value related to a non-color display effect and corresponding to the interface element; and assigning a value to the attribute related to the non-color display effect of the interface element based on the determined attribute value related to the non-color display effect.
 4. The method as described in claim 1, further comprising: determining an attribute value related to a non-color display effect and corresponding to the interface element; and assigning a value to the attribute related to the non-color display effect of the interface element based on the determined attribute value related to the non-color display effect, wherein the attribute value related to the non-color display effect includes a transparency value, a brightness value, a gray scale value, or any combination thereof.
 5. The method as described in claim 1, wherein the determining of the first color values comprises: determining the first color values based on a designated image, comprising: determining the first color values based on a color value of wallpaper in current use by a user terminal, a color value of an image corresponding to an image selection instruction, or a combination thereof.
 6. The method as described in claim 1, wherein the determining of the first color values comprises: determining the first color values based on a designated image, comprising: determining the first color values based on a color value of wallpaper in current use by a user terminal, a color value of an image corresponding to an image selection instruction, or a combination thereof, comprising: determining color values used to represent a dominant hue of the designated image based on a pixel color value of the designated image.
 7. The method as described in claim 1, wherein the determining of the first color values comprises: determining the first color values based on designated images, comprising: determining the first color values based on color values of wallpaper in current use by a user terminal, comprising: receiving a wallpaper setting instruction; in response to the receiving of the wallpaper setting instruction, setting an image corresponding to the wallpaper setting instruction to be the wallpaper in current use by the user terminal; and determining the first color values based on pixel color values of the image corresponding to the wallpaper setting instruction.
 8. The method as described in claim 1, wherein the determining of the first color values comprises: determining the first color values based on a status of the interface element, comprising: determining a color value mapped from the status of the interface element based on mapping relationships between different statuses of interface elements and color values.
 9. The method as described in claim 1, wherein the determining of the first color values comprises: determining the first color values based on a designated event, comprising: in response to a determination that a first designated event currently exists, determining a color value mapping to the currently existing first designated event based on mapping relationships between various designated events and color values.
 10. The method as described in claim 1, wherein the determining of the first color values comprises: determining the first color values based on a designated event, comprising: displaying a color value interface including at least two colors; and determining the first color values based on a user's selection of a color included in the color value interface.
 11. The method as described in claim 1, further comprises: prior to the assigning of the value to the color attribute of the interface element: determining whether the interface element is a preset interface element having a non-adjustable color attribute value; and in response to a determination that the interface element is the preset interface element having the non-adjustable color attribute value, obtaining a negative assessment result.
 12. The method as described in claim 1, wherein the interface element includes an icon, a text, a control, a display area boundary, a display area, or any combination thereof.
 13. The method as described in claim 1, wherein the interface element includes an interface element of a basic app, an interface element of a third party app, or a combination thereof.
 14. The method as described in claim 1, wherein the function icon includes one or more of the following: a Bluetooth switch icon, a wireless network switch icon, and/or an airplane mode switch icon.
 15. A system for setting interface element colors, comprising: a processor; and a memory coupled with the processor, wherein the memory is configured to provide the processor with instructions which when executed cause the processor to: render an interface element, wherein the interface element includes a function icon; determine first color values; assign a value to a color attribute of the interface element based on the first color values, comprising to: assign a first value to a first color attribute of the interface element based on the interface element having a first status being on or a first status being off, the first status being associated with a corresponding function represented by the function icon; and update the interface element according to the assigned value.
 16. The system as described in claim 15, wherein the determining of the first color values comprises to: determine the first color values based on a status of the interface element, a designated image, a designated event, a user-selected color value, or any combination thereof.
 17. The system as described in claim 15, wherein the processor is further configured to: determine an attribute value related to a non-color display effect and corresponding to the interface element; and assign a value to the attribute related to the non-color display effect of the interface element based on the determined attribute value related to the non-color display effect.
 18. The system as described in claim 15, wherein the processor is further configured to: determine an attribute value related to a non-color display effect and corresponding to the interface element; and assign a value to the attribute related to the non-color display effect of the interface element based on the determined attribute value related to the non-color display effect, wherein the attribute value related to the non-color display effect includes a transparency value, a brightness value, a gray scale value, or any combination thereof.
 19. The system as described in claim 15, wherein the determining of the first color values comprises to: determine the first color values based on a designated image, comprising to: determine the first color values based on a color value of wallpaper in current use by a user terminal, a color value of an image corresponding to an image selection instruction, or a combination thereof, comprising to: determine color values used to represent a dominant hue of the designated image based on a pixel color value of the designated image.
 20. The system as described in claim 15, wherein the determining of the first color values comprises to: determine the first color values based on a status of the interface element, comprising to: determine a color value mapped from the status of the interface element based on mapping relationships between different statuses of interface elements and color values.
 21. The system as described in claim 15, wherein the determining of the first color values comprises to: determine the first color values based on a designated event, comprising to: in response to a determination that a first designated event currently exists, determine a color value mapping to the currently existing first designated event based on mapping relationships between various designated events and color values.
 22. The system as described in claim 15, wherein the determining of the first color values comprises to: determine the first color values based on a designated event, comprising to: display a color value interface including at least two colors; and determine the first color values based on a user's selection of a color included in the color value interface.
 23. A computer program product for setting interface element colors, the computer program product being embodied in a tangible non-transitory computer readable storage medium and comprising computer instructions for: rendering an interface element, wherein the interface element includes a function icon; determining first color values; assigning a value to a color attribute of the interface element based on the first color values, comprising: assigning a first value to a first color attribute of the interface element based on the interface element having a first status being on or a first status being off, the first status being associated with a corresponding function represented by the function icon; and updating the interface element according to the assigned value. 